package com.educate.device.rpc.api;

import com.educate.device.model.bo.DeviceBO;
import com.educate.device.model.bo.DeviceMessageBO;
import com.educate.device.model.bo.DeviceStatusBO;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;

import java.util.List;

public interface DeviceService {

    void create(DeviceBO bo);

    void delete(DeviceBO bo);

    void delete(String deviceId);

    DeviceBO detail(String deviceId);

    DeviceBO detail(DeviceBO bo);

    void update(DeviceBO bo);

    Page<DeviceBO> query(DeviceBO bo, PageRequest pageRequest);

    List<DeviceBO> list(DeviceBO bo);

    DeviceMessageBO resultOperate(DeviceMessageBO bo);

    DeviceStatusBO state(DeviceBO bo);
}
